﻿using System;
using System.Collections.Generic;
using System.Text;

namespace SMBL.Interface.Database
{
    /// <summary>
    /// The Delegate of the Call back function used in TransAction
    /// The function can only do the method provided by IProcessor,
    /// those are: Execute, Query, Producer(2), Transaction.
    /// @Author: Push
    /// </summary>
    /// <returns></returns>
    public delegate Boolean delDoTransaction();

    /// <summary>
    /// Interface TranscAtion
    /// @Author: Push
    /// </summary>
    public interface ITransaction
    {
        /// <summary>
        /// Trans Action with the provider's connection and command
        /// @Author: Push
        /// </summary>
        /// <param name="DelegateTransaction"></param>
        /// <returns></returns>
        Boolean Transaction(delDoTransaction DelegateTransaction);
    }
}
